﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Codebit.ProgramLogger;
using System.IO;

namespace Logs
{
    public class Logs
    {
        public static void LogErro(string log)
        {
            //Classe utilizada para logar apenas Erros da aplicação
            LogFile Log = new LogFile(@"C:\Log\log.html",
                                        true,
                                        LogFile.LogType.XHTML_Plain,
                                        LogFile.LogLevel.Error);

            //Logar a mensagem de erro 
            Log.Log(log, LogFile.LogLevel.Error);
            Log.WriteFooter();
        }

        public static void LogDebug(string log)
        {
            //Classe utilizada para logar apenas Erros da aplicação
            LogFile Log = new LogFile(@"C:\Log\log.html",
                                        true,
                                        LogFile.LogType.XHTML_Plain,
                                        LogFile.LogLevel.Debug);

            //Logar a mensagem de debug
            Log.Log(log, LogFile.LogLevel.Debug);
            Log.WriteFooter();
        }

        public bool CleanLogger()
        {
            string caminhoArquiloLog = @"C:\Log\log.html";

            if (File.Exists(caminhoArquiloLog))
            {
                try
                {
                    File.WriteAllText(caminhoArquiloLog, String.Empty);
                    LogDebug("Arquivo de log limpado.");
                    LogDebug("Inicio do novo arquivo de log.");
                    return true;
                }
                catch (Exception ex)
                {
                    LogErro("Não é possível limpar o arquivo de log. Det.: " + ex.Message);
                    return false;
                }
            }

            LogDebug("Inicio do arquivo de Log.");
            return false;
        }
    }
}
